package langchain4j.hsl.com.service;

import com.baomidou.mybatisplus.extension.service.IService;
import langchain4j.hsl.com.model.entity.Appointment;
import langchain4j.hsl.com.model.entity.DoctorSchedule;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
* @author hsl
* @description 针对表【doctor_schedule(医生排班信息表)】的数据库操作Service
* @createDate 2025-04-27 09:36:39
*/
public interface DoctorScheduleService extends IService<DoctorSchedule> {

    boolean checkAvailability(Appointment appointment);

    List<DoctorSchedule> getAvailableDoctors(Appointment appointment);

    DoctorSchedule getSchedule(Appointment appointment);

    @Transactional
    boolean decreaseCapacity(Long scheduleId);

    @Transactional
    boolean increaseCapacity(Long scheduleId);
}
